FrameLib  0.7
DSP processing with frames of arbitrary timing and length
FrameLib_DSP Class Referenceabstract

#include <FrameLib_DSP.h>

Inheritance diagram for FrameLib_DSP:
FrameLib_Block FrameLib_Queueable< FrameLib_DSP > FrameLib_Object< FrameLib_Block > FrameLib_Queueable< FrameLib_Block > FrameLib_AudioInput FrameLib_AudioOutput FrameLib_Processor FrameLib_Scheduler

Classes

struct  SchedulerInfo
 

Public Member Functions

 FrameLib_DSP (ObjectType type, FrameLib_Context context, void *owner, FrameLib_Parameters::Info *info, unsigned long nIns, unsigned long nOuts, unsigned long nAudioChans=0)
 
 ~FrameLib_DSP ()
 
virtual void setFixedInput (unsigned long idx, double *input, unsigned long size)
 
virtual void blockUpdate (double **ins, double **outs, unsigned long blockSize)
 
virtual void reset (double samplingRate, unsigned long maxBlockSize)
 
virtual const FrameLib_ParametersgetParameters () const
 
virtual FrameType inputType (unsigned long idx) const
 
virtual FrameType outputType (unsigned long idx) const
 
virtual void autoOrderingConnections ()
 
- Public Member Functions inherited from FrameLib_Block
 FrameLib_Block (ObjectType type, FrameLib_Context context, void *owner)
 
virtual ~FrameLib_Block ()
 
virtual void setChannel (unsigned long chan)
 
- Public Member Functions inherited from FrameLib_Object< FrameLib_Block >
 FrameLib_Object (ObjectType type, FrameLib_Context context, void *owner, FrameLib_Block *parent)
 
virtual ~FrameLib_Object ()
 
ObjectType getType () const
 
FrameLib_Context getContext () const
 
void * getOwner () const
 
unsigned long getNumIns () const
 
unsigned long getNumOuts () const
 
unsigned long getNumAudioIns () const
 
unsigned long getNumAudioOuts () const
 
unsigned long getNumAudioChans () const
 
virtual std::string objectInfo (bool verbose=false)
 
virtual std::string inputInfo (unsigned long idx, bool verbose=false)
 
virtual std::string outputInfo (unsigned long idx, bool verbose=false)
 
virtual std::string audioInfo (unsigned long idx, bool verbose=false)
 
ConnectionResult addConnection (FrameLib_Block *object, unsigned long outIdx, unsigned long inIdx)
 
void deleteConnection (unsigned long inIdx)
 
ConnectionResult addOrderingConnection (FrameLib_Block *object, unsigned long outIdx)
 
void deleteOrderingConnection (FrameLib_Block *object, unsigned long outIdx)
 
void clearOrderingConnections ()
 
void clearConnections ()
 
bool isConnected (unsigned long inIdx) const
 
FrameLib_BlockgetConnection (unsigned long idx) const
 
unsigned long getConnectionIdx (unsigned long idx) const
 
bool supportsOrderingConnections () const
 
unsigned long getNumOrderingConnections () const
 
FrameLib_BlockgetOrderingConnection (unsigned long idx) const
 
unsigned long getOrderingConnectionIdx (unsigned long idx) const
 
bool isOrderingConnection (FrameLib_Block *object) const
 
unsigned long getNumOutputDependencies () const
 
FrameLib_BlockgetOutputDependency (unsigned long idx) const
 
- Public Member Functions inherited from FrameLib_Queueable< FrameLib_Block >
 FrameLib_Queueable ()
 
- Public Member Functions inherited from FrameLib_Queueable< FrameLib_DSP >
 FrameLib_Queueable ()
 

Protected Member Functions

void setIO (unsigned long nIns, unsigned long nOuts, unsigned long nAudioChans=0)
 
void inputMode (unsigned long idx, bool update, bool trigger, bool switchable, FrameType type=kFrameNormal)
 
void setParameterInput (unsigned long idx)
 
void addParameterInput ()
 
void outputMode (unsigned long idx, FrameType type)
 
void updateTrigger (unsigned long idx, bool trigger)
 
bool isTrigger (unsigned long idx) const
 
FrameLib_TimeFormat getFrameTime () const
 
FrameLib_TimeFormat getValidTime () const
 
FrameLib_TimeFormat getInputTime () const
 
FrameLib_TimeFormat getCurrentTime () const
 
FrameLib_TimeFormat getBlockStartTime () const
 
FrameLib_TimeFormat getBlockEndTime () const
 
FrameLib_TimeFormat getInputFrameTime (unsigned long idx) const
 
FrameLib_TimeFormat getInputValidTime (unsigned long idx) const
 
void requestOutputSize (unsigned long idx, size_t size)
 
bool allocateOutputs ()
 
double * getInput (unsigned long idx, size_t *size)
 
FrameLib_Parameters::SerialgetInput (unsigned long idx)
 
double * getOutput (unsigned long idx, size_t *size)
 
FrameLib_Parameters::SerialgetOutput (unsigned long idx)
 
unsigned long getNumInputObjects (unsigned long blockIdx)
 
FrameLib_DSPgetInputObject (unsigned long blockIdx, unsigned long idx)
 
virtual unsigned long getInputObjectIdx (unsigned long blockIdx, unsigned long idx)
 
FrameLib_DSPgetOutputObject (unsigned long blockIdx)
 
virtual unsigned long getOutputObjectIdx (unsigned long blockIdx)
 
unsigned long getNumOrderingConnectionObjects ()
 
FrameLib_DSPgetOrderingConnectionObject (unsigned long idx)
 
- Protected Member Functions inherited from FrameLib_Object< FrameLib_Block >
void setIO (unsigned long nIns, unsigned long nOuts, unsigned long nAudioChans=0)
 
void enableOrderingConnections ()
 
U * alloc (unsigned long N)
 
void dealloc (U *&ptr)
 
void clearAllocator ()
 
FrameLib_LocalAllocator::StorageregisterStorage (const char *name)
 
void releaseStorage (FrameLib_LocalAllocator::Storage *&storage)
 

Static Protected Member Functions

static void copyVector (double *output, double *input, unsigned long size)
 
static void zeroVector (double *output, unsigned long size)
 
- Static Protected Member Functions inherited from FrameLib_Object< FrameLib_Block >
static const char * formatInfo (const char *verboseStr, const char *briefStr, bool verbose)
 
static std::string formatInfo (const char *verboseStr, const char *briefStr, unsigned long idx, bool verbose)
 
static std::string formatInfo (const char *verboseStr, const char *briefStr, const char *replaceStr, bool verbose)
 
static std::string numberedString (const char *str, unsigned long idx)
 

Protected Attributes

double mSamplingRate
 
unsigned long mMaxBlockSize
 
FrameLib_Parameters mParameters
 

Friends

class FrameLib_ProcessingQueue
 

Additional Inherited Members

- Public Types inherited from FrameLib_Object< FrameLib_Block >
typedef FrameLib_Queueable< FrameLib_Block >::Queue Queue
 
- Static Public Member Functions inherited from FrameLib_Object< FrameLib_Block >
static bool handlesAudio ()
 

Constructor & Destructor Documentation

◆ FrameLib_DSP()

FrameLib_DSP::FrameLib_DSP ( ObjectType  type,
FrameLib_Context  context,
void *  owner,
FrameLib_Parameters::Info info,
unsigned long  nIns,
unsigned long  nOuts,
unsigned long  nAudioChans = 0 
)

◆ ~FrameLib_DSP()

FrameLib_DSP::~FrameLib_DSP ( )

Member Function Documentation

◆ addParameterInput()

void FrameLib_DSP::addParameterInput ( )
protected

◆ allocateOutputs()

bool FrameLib_DSP::allocateOutputs ( )
protected

◆ autoOrderingConnections()

void FrameLib_DSP::autoOrderingConnections ( )
virtual

◆ blockUpdate()

void FrameLib_DSP::blockUpdate ( double **  ins,
double **  outs,
unsigned long  blockSize 
)
virtual

◆ copyVector()

static void FrameLib_DSP::copyVector ( double *  output,
double *  input,
unsigned long  size 
)
inlinestaticprotected

◆ getBlockEndTime()

FrameLib_TimeFormat FrameLib_DSP::getBlockEndTime ( ) const
inlineprotected

◆ getBlockStartTime()

FrameLib_TimeFormat FrameLib_DSP::getBlockStartTime ( ) const
inlineprotected

◆ getCurrentTime()

FrameLib_TimeFormat FrameLib_DSP::getCurrentTime ( ) const
inlineprotected

◆ getFrameTime()

FrameLib_TimeFormat FrameLib_DSP::getFrameTime ( ) const
inlineprotected

◆ getInput() [1/2]

double * FrameLib_DSP::getInput ( unsigned long  idx,
size_t *  size 
)
protected

◆ getInput() [2/2]

FrameLib_Parameters::Serial * FrameLib_DSP::getInput ( unsigned long  idx)
protected

◆ getInputFrameTime()

FrameLib_TimeFormat FrameLib_DSP::getInputFrameTime ( unsigned long  idx) const
inlineprotected

◆ getInputObject()

FrameLib_DSP* FrameLib_DSP::getInputObject ( unsigned long  blockIdx,
unsigned long  idx 
)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getInputObjectIdx()

virtual unsigned long FrameLib_DSP::getInputObjectIdx ( unsigned long  blockIdx,
unsigned long  idx 
)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getInputTime()

FrameLib_TimeFormat FrameLib_DSP::getInputTime ( ) const
inlineprotected

◆ getInputValidTime()

FrameLib_TimeFormat FrameLib_DSP::getInputValidTime ( unsigned long  idx) const
inlineprotected

◆ getNumInputObjects()

unsigned long FrameLib_DSP::getNumInputObjects ( unsigned long  blockIdx)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getNumOrderingConnectionObjects()

unsigned long FrameLib_DSP::getNumOrderingConnectionObjects ( )
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getOrderingConnectionObject()

FrameLib_DSP* FrameLib_DSP::getOrderingConnectionObject ( unsigned long  idx)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getOutput() [1/2]

double * FrameLib_DSP::getOutput ( unsigned long  idx,
size_t *  size 
)
protected

◆ getOutput() [2/2]

FrameLib_Parameters::Serial * FrameLib_DSP::getOutput ( unsigned long  idx)
protected

◆ getOutputObject()

FrameLib_DSP* FrameLib_DSP::getOutputObject ( unsigned long  blockIdx)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getOutputObjectIdx()

virtual unsigned long FrameLib_DSP::getOutputObjectIdx ( unsigned long  blockIdx)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getParameters()

virtual const FrameLib_Parameters* FrameLib_DSP::getParameters ( ) const
inlinevirtual

Reimplemented from FrameLib_Object< FrameLib_Block >.

◆ getValidTime()

FrameLib_TimeFormat FrameLib_DSP::getValidTime ( ) const
inlineprotected

◆ inputMode()

void FrameLib_DSP::inputMode ( unsigned long  idx,
bool  update,
bool  trigger,
bool  switchable,
FrameType  type = kFrameNormal 
)
protected

◆ inputType()

virtual FrameType FrameLib_DSP::inputType ( unsigned long  idx) const
inlinevirtual

◆ isTrigger()

bool FrameLib_DSP::isTrigger ( unsigned long  idx) const
inlineprotected

◆ outputMode()

void FrameLib_DSP::outputMode ( unsigned long  idx,
FrameType  type 
)
protected

◆ outputType()

virtual FrameType FrameLib_DSP::outputType ( unsigned long  idx) const
inlinevirtual

◆ requestOutputSize()

void FrameLib_DSP::requestOutputSize ( unsigned long  idx,
size_t  size 
)
inlineprotected

◆ reset()

void FrameLib_DSP::reset ( double  samplingRate,
unsigned long  maxBlockSize 
)
virtual

◆ setFixedInput()

void FrameLib_DSP::setFixedInput ( unsigned long  idx,
double *  input,
unsigned long  size 
)
virtual

◆ setIO()

void FrameLib_DSP::setIO ( unsigned long  nIns,
unsigned long  nOuts,
unsigned long  nAudioChans = 0 
)
protected

◆ setParameterInput()

void FrameLib_DSP::setParameterInput ( unsigned long  idx)
protected

◆ updateTrigger()

void FrameLib_DSP::updateTrigger ( unsigned long  idx,
bool  trigger 
)
protected

◆ zeroVector()

static void FrameLib_DSP::zeroVector ( double *  output,
unsigned long  size 
)
inlinestaticprotected

Friends And Related Function Documentation

◆ FrameLib_ProcessingQueue

friend class FrameLib_ProcessingQueue
friend

Member Data Documentation

◆ mMaxBlockSize

unsigned long FrameLib_DSP::mMaxBlockSize
protected

◆ mParameters

FrameLib_Parameters FrameLib_DSP::mParameters
protected

◆ mSamplingRate

double FrameLib_DSP::mSamplingRate
protected

The documentation for this class was generated from the following files: